home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Adobe Graphics & Publishing SDK 1996 December
/
Adobe Graphics & Publishing SDK 1996 December.iso
/
mac
/
Illustrator 6.0 SDK r1 Mac
/
AI Plugin Interface
/
AIArt.h
next >
Wrap
Text File
|
1995-12-21
|
3KB
|
154 lines
/**
AIArt.h
Copyright (c) 1995 Adobe Systems Incorporated.
All Rights Reserved
Adobe Illustrator 6.0 Artwork Object Suite.
**/
#ifndef __AIArt__
#define __AIArt__
/*******************************************************************************
**
** Imports
**
**/
#include "AITypes.h"
#include "AILayer.h"
#include "AIFixedMath.h"
#if Macintosh
#ifdef __cplusplus
extern "C" {
#endif
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=mac68k
#endif
#if PRAGMA_IMPORT_SUPPORTED
#pragma import on
#endif
#endif
/*******************************************************************************
**
** Constants
**
**/
#define kAIArtSuite "AI Art Suite"
#define kAIArtVersion 2
// Artwork Notifiers
#define kAIArtSelectionChangedNotifier "AI Art Selection Changed Notifier"
#define kAIArtPropertiesChangedNotifier "AI Art Properties Changed Notifier"
enum {
kAnyArt = -1,
kUnknownArt = 0,
kGroupArt,
kPathArt,
kCompoundPathArt,
kTextArt,
kTextPathArt,
kTextRunArt,
kPlacedArt,
kMysteryPathArt,
kRasterArt
};
enum {
kPlaceAbove = 1,
kPlaceBelow,
kPlaceInsideOnTop,
kPlaceInsideOnBottom,
kPlaceAboveAll,
kPlaceBelowAll
};
enum {
kArtSelected = 0x0001,
kArtLocked = 0x0002,
kArtHidden = 0x0004
};
// errors
#define kUnknownArtTypeErr 'ART?'
#define kUnknownPaintOrderTypeErr 'ORD?'
#define kUntouchableArtObjectErr 'ELIO'
#define kTooDeepNestingErr 'NEST'
#define kUntouchableLayerErr 'NESS'
/*******************************************************************************
**
** Types
**
**/
typedef struct _t_AIArtOpaque *AIArtHandle; // opaque reference to an artwork object
/*******************************************************************************
**
** Suite
**
**/
typedef struct {
MACPASCAL FXErr (*NewArt) ( short type, short paintOrder, AIArtHandle prep, AIArtHandle *newArt );
MACPASCAL FXErr (*DisposeArt) ( AIArtHandle art );
MACPASCAL FXErr (*ReorderArt) ( AIArtHandle thisArt, short paintOrder, AIArtHandle prep );
MACPASCAL FXErr (*DuplicateArt) ( AIArtHandle thisArt, short paintOrder, AIArtHandle prep, AIArtHandle *newArt );
MACPASCAL FXErr (*GetFirstArtOfLayer) ( AILayerHandle layer, AIArtHandle *art );
MACPASCAL FXErr (*GetLayerOfArt) ( AIArtHandle art, AILayerHandle *layer );
MACPASCAL FXErr (*GetArtType) ( AIArtHandle art, short *type );
MACPASCAL FXErr (*GetArtUserAttr) ( AIArtHandle art, long whichAttr, long *attr );
MACPASCAL FXErr (*SetArtUserAttr) ( AIArtHandle art, long whichAttr, long attr );
MACPASCAL FXErr (*GetArtParent) ( AIArtHandle art, AIArtHandle *parent );
MACPASCAL FXErr (*GetArtFirstChild) ( AIArtHandle art, AIArtHandle *child );
MACPASCAL FXErr (*GetArtSibling) ( AIArtHandle art, AIArtHandle *sibling );
MACPASCAL FXErr (*GetArtPriorSibling) ( AIArtHandle art, AIArtHandle *sibling );
MACPASCAL FXErr (*GetArtBounds) ( AIArtHandle art, FixedRect *bounds );
MACPASCAL FXErr (*GetArtCenterPointVisible) ( AIArtHandle art, Boolean *visible );
MACPASCAL FXErr (*SetArtCenterPointVisible) ( AIArtHandle art, Boolean visible );
} AIArtSuite;
#if Macintosh
#if PRAGMA_IMPORT_SUPPORTED
#pragma import off
#endif
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=reset
#endif
#ifdef __cplusplus
}
#endif
#endif
#endif